Hi alt.
There are several exceptions in my log files after 24 hours of working smpp client.
1.
IsConnected error
Exception:Thread was being aborted.
TargetSite:Int32 select(Int32, IntPtr[], IntPtr[], IntPtr[], System.Net.Sockets.TimeValue ByRef)
StackTrace: at System.Net.UnsafeNclNativeMethods.OSSOCK.select(Int32 ignoredParameter, IntPtr[] readfds, IntPtr[] writefds, IntPtr[] exceptfds, TimeValue& timeout)
at System.Net.Sockets.Socket.Poll(Int32 microSeconds, SelectMode mode)
at ALT.SMS.SmppClient.get_IsConnected()
Data:System.Collections.ListDictionaryInternal
2.
Receive fail
Exception:An existing connection was forcibly closed by the remote host
TargetSite:Int32 EndReceive(System.IAsyncResult)
StackTrace: at System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult)
at ALT.SMS.SmppClient.eMfdLFjKR(IAsyncResult )
Data:System.Collections.ListDictionaryInternal
After this one i get the "ESME_RBINDFAIL" status for a long time and then the following exception:
IsConnected error
Exception:Object reference not set to an instance of an object.
TargetSite:Boolean get_IsConnected()
StackTrace: at ALT.SMS.SmppClient.get_IsConnected()
Data:System.Collections.ListDictionaryInternal
Several exceptions
Moderator: alt
Hi alt.
I have donload the 2.8.1 version. It is working for 4 days without any errors, thanx. But i have one more question:
Sometimes i can't get the delivery report in evDeliverSmComplete event.
SmppClient.GetMessageText(data.UserDataPdu.ShortMessage, data.DataCoding); return the empty string because some of the messageID in delivery reports has a different size. SMSC administrator said that the messageID may contains up to 64 bytes. Could you please tell me how can i convert data.UserDataPdu.ShortMessage data to ascii string?
System.Text.Encoding.ASCII.GetString have no result...
Thank you.
I have donload the 2.8.1 version. It is working for 4 days without any errors, thanx. But i have one more question:
Sometimes i can't get the delivery report in evDeliverSmComplete event.
SmppClient.GetMessageText(data.UserDataPdu.ShortMessage, data.DataCoding); return the empty string because some of the messageID in delivery reports has a different size. SMSC administrator said that the messageID may contains up to 64 bytes. Could you please tell me how can i convert data.UserDataPdu.ShortMessage data to ascii string?
System.Text.Encoding.ASCII.GetString have no result...
Thank you.
Its the packet data when i receive delivery report:
0000010e00000005000000000000000b000101373730313735353534303100000131373
532000400000000000000009a69643a3730313735353534303131323635303434383239
333331313030342d3134363337393833363334303835207375623a30303120646c76726
43a303031207375626d697420646174653a3130303230313233323020646f6e65206461
74653a3130303230313233323020737461743a44454c49565244206572723a303030205
46578743a0500033b020174657374207465737420746573740427000102001e002b3730
313735353534303131323635303434383239333331313030342d3134363337393833363
334303835002001000c373730313030303232303600
and when i can't get it:
0000010e00000005000000000000000b000101373730313735353534303100000131373
532000400000000000000009a69643a3730313735353534303131323635303434373034
373532313030382d3134363337393833363334303835207375623a30303120646c76726
43a303031207375626d697420646174653a3130303230313233313820646f6e65206461
74653a3130303230313233313820737461743a44454c49565244206572723a303030205
46578743a050003efbfbd02017465737420746573742074650427000102001e002b37303
13735353534303131323635303434373034373532313030382d31343633373938333633
34303835002001000c373730313030303232303600
0000010e00000005000000000000000b000101373730313735353534303100000131373
532000400000000000000009a69643a3730313735353534303131323635303434383239
333331313030342d3134363337393833363334303835207375623a30303120646c76726
43a303031207375626d697420646174653a3130303230313233323020646f6e65206461
74653a3130303230313233323020737461743a44454c49565244206572723a303030205
46578743a0500033b020174657374207465737420746573740427000102001e002b3730
313735353534303131323635303434383239333331313030342d3134363337393833363
334303835002001000c373730313030303232303600
and when i can't get it:
0000010e00000005000000000000000b000101373730313735353534303100000131373
532000400000000000000009a69643a3730313735353534303131323635303434373034
373532313030382d3134363337393833363334303835207375623a30303120646c76726
43a303031207375626d697420646174653a3130303230313233313820646f6e65206461
74653a3130303230313233313820737461743a44454c49565244206572723a303030205
46578743a050003efbfbd02017465737420746573742074650427000102001e002b37303
13735353534303131323635303434373034373532313030382d31343633373938333633
34303835002001000c373730313030303232303600
fixed in version 2.8.2
Note that you can also get message Id using code
Note that you can also get message Id using code
Code: Select all
TLV receiptedMessageId = data.Optional[OptionalTags.ReceiptedMessageId];
if (receiptedMessageId != null)
{
string messageId = SmppClient.GetMessageText(receiptedMessageId.Value, DataCodings.ASCII);
}