public bool SendE2ETextMessage(ThreemaE2ETextMessage threemaE2ETextMessage) { try { try { _log.LogDebug("ThreemaController.SendE2ETextMessage: ModelState {0}, ThreemaE2ETextMessage {1}", ModelState.IsValid, threemaE2ETextMessage.ToString()); } catch (Exception ex) { _log.LogError("ThreemaController.SendE2ETextMessage 1 " + ex.Message); } string myPrivateKey = this._configuration["Threema:PrivateKey"]; string myThreemaId = this._configuration["Threema:ThreemaId"]; string mySecret = this._configuration["Threema:Secret"]; APIConnector apiConnector = new APIConnector(myThreemaId, mySecret, null); string text = DataUtils.Utf8Endcode(threemaE2ETextMessage.Text.Trim()); Key privateKey = Key.DecodeKey(myPrivateKey); E2EHelper e2EHelper = new E2EHelper(apiConnector, privateKey.key); String messageId = e2EHelper.SendTextMessage(threemaE2ETextMessage.To, text); _log.LogDebug("ThreemaController.SendE2ETextMessage: messege sendet to {0}", threemaE2ETextMessage.To); return(true); } catch (Exception ex) { _log.LogError("ThreemaController.SendE2ETextMessage 2 " + ex.Message); return(false); } }
/// <summary> /// Wrapper to send text message E2E <see cref="Threema.MsgApi.E2EHelper.SendTextMessage"/> /// </summary> /// <param name="to">Recipient id</param> /// <param name="from">Sender id</param> /// <param name="secret">Sender sercret</param> /// <param name="privateKey">Sender private key</param> /// <param name="text">Text message</param> /// <param name="apiUrl">Optional api url</param> /// <returns>Message id</returns> public string SendTextMessage(string to, string from, string secret, string privateKey, string text, string apiUrl = APIConnector.DEFAULTAPIURL) { byte[] privateKeyBytes = GetKey(privateKey, Key.KeyType.PRIVATE); E2EHelper e2EHelper = new E2EHelper(this.CreateConnector(from, secret, apiUrl), privateKeyBytes); return(e2EHelper.SendTextMessage(to, DataUtils.Utf8Endcode(text))); }
protected override void Execute() { string to = this.threemaId.Value; string from = this.fromField.Value; string secret = this.secretField.Value; byte[] privateKey = this.privateKeyField.GetValue(); //string text = ReadStream(System.Console.In).Trim(); string text = DataUtils.Utf8Endcode(System.Console.ReadLine().Trim()); E2EHelper e2EHelper = new E2EHelper(this.CreateConnector(from, secret), privateKey); String messageId = e2EHelper.SendTextMessage(to, text); System.Console.WriteLine("MessageId: " + messageId); }