Skip to content

Commit dd55d4b

Browse files
committed
SMSHandler first code
1 parent cf88ad0 commit dd55d4b

1 file changed

Lines changed: 103 additions & 0 deletions

File tree

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
package nativeClasses.sms
2+
{
3+
//import com.doitflash.air.extensions.sms.SMS;
4+
//import com.doitflash.air.extensions.sms.SMSEvent;
5+
6+
import flash.events.Event;
7+
import flash.utils.clearInterval;
8+
import flash.utils.getDefinitionByName;
9+
import flash.utils.setInterval;
10+
11+
//import com.doitflash.air.extensions.sms.SMS;
12+
13+
public class SMSHandlerNative
14+
{
15+
/**com.doitflash.air.extensions.sms.SMS*/
16+
private static var smsClass:Class ;
17+
18+
/**com.doitflash.air.extensions.sms.SMSEvent*/
19+
private static var smsEventObject:Class ;
20+
21+
private static var sms:Object ;
22+
23+
private static const smsid:String = '468456456';
24+
25+
private static var onDone:Function,
26+
onFaild:Function ;
27+
28+
public static function setUp():void
29+
{
30+
if(sms==null)
31+
{
32+
try
33+
{
34+
smsClass == getDefinitionByName("com.doitflash.air.extensions.sms.SMS") as Class;
35+
smsEventObject == getDefinitionByName("com.doitflash.air.extensions.sms.SMSEvent") as Class;
36+
sms = new smsClass();
37+
}
38+
catch(e)
39+
{
40+
smsClass = null ;
41+
trace("com.doitflash.air.extensions.sms.SMS is not imported");
42+
}
43+
}
44+
}
45+
46+
public static function sendMessage(phoneNumber:String,body:String,onDoneFunction:Function,onFaildFunction:Function):void
47+
{
48+
setUp();
49+
50+
onDone = onDoneFunction ;
51+
onFaild = onFaildFunction ;
52+
53+
if(sms)
54+
{
55+
sms.addEventListener((smsEventObject as Object).SEND_ERROR,sendingFaild);
56+
sms.addEventListener((smsEventObject as Object).DELIVERY_FAILED,sendingFaild);
57+
sms.addEventListener((smsEventObject as Object).SEND_SUCCESS,listenToAnswer);
58+
sms.addEventListener((smsEventObject as Object).SMS_RECEIVED,controllReceivedSMS);
59+
sms.addEventListener((smsEventObject as Object).NEW_RECEIVED_SMS,controllReceivedSMS);
60+
sms.addEventListener((smsEventObject as Object).NEW_PERIOD_SMS,controllReceivedSMS);
61+
62+
sms.sendSms(phoneNumber,body,smsid);
63+
}
64+
}
65+
66+
protected static function listenToAnswer(event:*):void
67+
{
68+
trace("SmS snet..."+JSON.stringify(event.param,null,' '));
69+
trace("SMSs1 are : "+JSON.stringify(sms.smsArray));
70+
sms.removeEventListener((smsEventObject as Object).SEND_SUCCESS,listenToAnswer);
71+
72+
onDone();
73+
}
74+
75+
protected static function controllReceivedSMS(event:*):void
76+
{
77+
trace("SMSs2 are : "+JSON.stringify(sms.smsArrayAfterId));
78+
//clearInterval(intervalId);
79+
trace("receved sms is : "+JSON.stringify(event.param,null,' '));
80+
}
81+
82+
/**Add all listeners to detect sms is sent successfully*/
83+
private static function setListeners():void
84+
{
85+
86+
}
87+
88+
/**Remove all listeners*/
89+
private static function removeListeners():void
90+
{
91+
sms.removeEventListener((smsEventObject as Object).SEND_ERROR,sendingFaild);
92+
sms.removeEventListener((smsEventObject as Object).DELIVERY_FAILED,sendingFaild);
93+
sms.removeEventListener((smsEventObject as Object).SEND_SUCCESS,listenToAnswer);
94+
sms.removeEventListener((smsEventObject as Object).SMS_RECEIVED,controllReceivedSMS);
95+
}
96+
97+
protected static function sendingFaild(event:Event):void
98+
{
99+
trace("Sending fails");
100+
removeListeners();
101+
onFaild();
102+
}
103+
}

0 commit comments

Comments
 (0)