AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

[решено] php+ami+ DongleSendSMS ??

Asterisk IP PBX 4 сообщений -
#1

[решено] php+ami+ DongleSendSMS ??


Друзья подскажите как отправить из пхп смс через ами ??

Пробую:

..

$oSocket = fsockopen($strHost, 5038, $errnum, $errdesc) or die("Connection to host failed");
fputs($oSocket, "Action: login\r\n");
fputs($oSocket, "Events: off\r\n");
fputs($oSocket, "Username: $strUser\r\n");
fputs($oSocket, "Secret: $strSecret\r\n\r\n");
sleep(5);
fputs($oSocket, "Action: DongleSendSMS\r\n");
fputs($oSocket, "Channel: Local/dongel0\r\n");
fputs($oSocket, "Application: DongleSendSMS\r\n");
fputs($oSocket, "Data: dongle0,+7902ХХХХХХХ,\"This is the good day to die\"\r\n");
sleep(5);
fputs($oSocket, "Action: Logoff\r\n\r\n");


и тишина ...

хотя с cli работает отлично


test*CLI> dongle sms dongle0 +7902ХХХХХХХ test
[dongle0] SMS queued for send with id 0x2b3b3060
-- [dongle0] Successfully sent SMS message 0x2b3b3060
[Nov 26 18:30:25] NOTICE[100631]: at_response.c:257 at_response_ok: [dongle0] Successfully sent SMS message 0x2b3b3060

ну что кто побывал ? и кого получилось ?

_________________
FreeBSD X.XX - Asterisk X.XX


Последний раз редактировалось: xmaster83 (Чт Янв 23, 2014 20:25)
#2

Нахожусь в процессе допиливания этой задачки, но заработало в таком вот виде:

$target_number= "050XXXXXXXX";
$service_port = "5038";
$address = '10.1.13.35';
$username = "sender_sms";
$secret = "password";


$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket < 0) {
echo "socket_create() failed: reason: " . socket_strerror($socket) . "\n";
}
$result = socket_connect($socket, $address, $service_port);
if ($result < 0) {
echo "socket_connect() failed.\nReason: ($result) " . socket_strerror($result) . "\n";
}
$in = "Action: login\n";
socket_write($socket, $in, strlen($in));

$in = "Username: $username\n";
socket_write($socket, $in, strlen($in));

$in = "Secret: $secret\n";
socket_write($socket, $in, strlen($in));

$in = "Events: off\n\n";
socket_write($socket, $in, strlen($in));

$in = "Action: command\n";
socket_write($socket, $in, strlen($in));

$in = "Command: dongle sms dongle0 $target_number $sms_text\r\n\r\n";
socket_write($socket, $in, strlen($in));

sleep(3);

$in = "Action: logoff\n\n";
socket_write($socket, $in, strlen($in));

sleep(1);
echo "Closing socket...";
socket_close($socket);
#3

странно у меня вываливается ошибка
[Dec 23 11:37:58] ERROR[100620]: at_response.c:499 at_response_error: [dongle1] Error sending SMS message 0x2dc56790

_________________
FreeBSD X.XX - Asterisk X.XX
#4

в тот день номер симки отключили )

абонентку внёс всё заработало ,

спасибо

_________________
FreeBSD X.XX - Asterisk X.XX