private void btnSendMessage_Click(object sender, EventArgs e) { // Confirm all settings string sourceNumber = txtSourceNumber.Text.Trim(); string rawTargetNumber = txtDestinationNumber.Text.Trim(); string message = txtMessage.Text.Trim(); if ((sourceNumber.Length < 5) || (rawTargetNumber.Length < 10) || (message.Length == 0)) { MessageBox.Show("Either a number is invalid or the message is blank"); return; } // Add target address prefix string targetNumber = destinationAdrPrefix_ + rawTargetNumber; // Disable send until we get a reply from the SMSC for the current nessage btnSendMessage.Enabled = false; submit_sm submitPdu = new submit_sm(); if (!string.IsNullOrEmpty(submitServiceType_)) { submitPdu.ServiceType = submitServiceType_; } submitPdu.SourceAddress = new address(TypeOfNumber.NATIONAL, NumericPlanIndicator.E164, sourceNumber); submitPdu.DestinationAddress = new address(TypeOfNumber.NATIONAL, NumericPlanIndicator.E164, targetNumber); submitPdu.RegisteredDelivery = new registered_delivery(DeliveryReceiptType.FINAL_DELIVERY_RECEIPT, AcknowledgementType.DELIVERY_USER_ACK_REQUEST, true); submitPdu.Message = message; smppSession_.BeginSubmitSm(submitPdu, new AsyncCallback(SubmitSmCallback)); // Add the message to the sent listview using the message sequence # for tracking AddNewMessage("Pending", targetNumber, message, "n/a", "n/a", submitPdu.SequenceNumber); }
private static void OnSessionBound(object sender, SmppEventArgs args) { // Session is now bound Console.WriteLine("Session is successfully bound to the SMSC"); // Try sending a single message submit_sm submitPdu = new submit_sm(); submitPdu.SourceAddress = new address(TypeOfNumber.NATIONAL, NumericPlanIndicator.E164, "9727321655"); submitPdu.DestinationAddress = new address(TypeOfNumber.NATIONAL, NumericPlanIndicator.E164, "9724151634"); submitPdu.RegisteredDelivery = new registered_delivery(DeliveryReceiptType.FINAL_DELIVERY_RECEIPT, AcknowledgementType.DELIVERY_USER_ACK_REQUEST, true); mBloxOperatorId operatorId = new mBloxOperatorId("12345"); submitPdu.AddVendorSpecificElements(operatorId); submitPdu.Message = "This is a test"; // TlvParameter test = submitPdu.GetOptionalElement(operatorId.Tag); _smppSession.BeginSubmitSm(submitPdu, new AsyncCallback(SubmitSmCallback)); }