Hello everybody, first I'm sorry for my English.
I need to do something similar like the CiviMail campaigns, but with phone calls. I'm new in CiviCRM, but I have some time in Drupal. I'm not PHP Coder, but I do something.
I didn't find anywhere a function provided by CiviCRM to create phone campaigns, so I wrote a Drupal module to use de CiviCRM API, but I have a few problems creating activities.
The module creates two Activity Types: "Phone Campaign" and "Campaign Phone Call". Theoricly, when a "Phone Campaign" activity is created, the module creates much "Campaign Phone Call" as target in "Phone Campaign" are.
I can create activity types with the API, but I couldn't create activities, or I'm not implementing the hooks in the right way.
Here is the code where the hook_civicrm_post is implemented:
<?php
function civicrm_phonecampaign_civicrm_post($op, $objectName, $objectId, &$objectRef) {
Logger::debug_var("op ", $op);
Logger::debug_var("objectName", $objectName);
Logger::debug_var("objectId ", $objectId);
Logger::debug_var("objectRef ", $objectRef);
if ($op == 'create' && $objectName == 'Activity') {
$atid = db_result(db_query('SELECT activity_type_id FROM civicrm_activity WHERE id=%d', $objectId));
$activity = db_result(db_query('SELECT label FROM civicrm_option_value WHERE value=%d', $atid));
if ($activity == 'Phone Campaign') {
$result = db_query('SELECT target_contact_id FROM civicrm_activity_target WHERE activity_id = %d', $objectId);
while ($row = db_fetch_array($result)) {
$idsarr[] = $row['target_contact_id'];
}
$iatid = db_result(db_query("SELECT value FROM civicrm_option_value WHERE label='Campaign Phone Call'"));
$source_contact_id = db_result(db_query('SELECT source_contact_id FROM civicrm_activity WHERE id = %d', $objectId));
$assignee_contact_id = db_result(db_query('SELECT assignee_contact_id FROM civicrm_activity WHERE id = %d', $objectId));
$subject = db_result(db_query('SELECT subject FROM civicrm_activity WHERE id = %d', $objectId));
$details = db_result(db_query('SELECT details FROM civicrm_activity WHERE id = %d', $objectId));
$activity_date_time = db_result(db_query('SELECT activity_date_time FROM civicrm_activity WHERE id = %d', $objectId));
$status_id = db_result(db_query('SELECT status_id FROM civicrm_activity WHERE id = %d', $objectId));
foreach ($idsarr as $tcid) {
$params = array(
'activity_type_id' => $iatid,
'source_contact_id' => $source_contact_id,
'assignee_contact_id' => $assignee_contact_id,
'target_contact_id' => $tcid,
'subject' => $subject,
'details' => $details,
'status_id' => $status_id,
'activity_date_time' => $activity_date_time
);
$act = civicrm_activity_create($params);
}
}
}
}
if anyone can give me a clue, I will be wondered

thanks in advance,
mano.