Esempio n. 1
0
function ShowDefaultMessage()
{
    // Show previous input if there is something
    if (ReturnGetPost('message') !== null) {
        echo htmlentities(ReturnGetPost('message'));
    }
}
Esempio n. 2
0
<?php 
}
?>

<?php 
/* INCLUDES */
require_once 'include/GlobalConstants.php';
require_once 'include/UiHelper.php';
require_once 'include/PublicKey.php';
require_once 'include/GetPost.php';
require_once 'include/ErrorCheckCollector.php';
//the config options
require_once 'config.php';
/* HANDLE SENDING OF MESSAGES */
$actionDone = null;
if (ReturnGetPost('recieverid')) {
    require_once 'SendTextMessage.php';
}
/* CHECK PREREQUISITES */
$errCol = new ErrorChkColl();
$sendingCheckSuccessful = true;
//later more requirements are added
//file: connection credentials
$errCol->registerGenericMessages('files', 'connCred', '<code>' . FILENAME_CONNCRED . '</code> was correctly created.', '<code>' . FILENAME_CONNCRED . '</code> was not correctly created.');
if (!file_exists(FILENAME_CONNCRED)) {
    $errCol->registerError('files', 'connCred', 'The file does not exist.');
} else {
    include_once FILENAME_CONNCRED;
    if (!defined('MSGAPI_GATEWAY_THREEMA_ID') || !defined('MSGAPI_GATEWAY_THREEMA_ID_SECRET')) {
        $errCol->registerError('files', 'connCred', 'Not all required constants are defined.');
    } else {
 * @return int
 */
function SendMessage(Threema\MsgApi\Connection $connector, $threemaId, $message)
{
    $e2eHelper = new \Threema\MsgApi\Helpers\E2EHelper(KeyHexToBin(MSGAPI_PRIVATE_KEY), $connector);
    $result = $e2eHelper->sendTextMessage($threemaId, $message);
    if (true === $result->isSuccess()) {
        return $result->getMessageId();
    } else {
        throw new Exception($result->getErrorMessage());
    }
}
//get params
if (ReturnGetPost('recieverid') && preg_match('/' . REGEXP_THREEMAID_ANY . '/', ReturnGetPost('recieverid'))) {
    $threemaId = htmlentities(ReturnGetPost('recieverid'));
    $message = ReturnGetPost('message');
}
//create connection
$connector = CreateConnection();
//Send message
if ($threemaId !== null && $message !== null) {
    if (!$isIncluded) {
        header('Content-Type: text/plain');
    }
    $actionDone = true;
    try {
        $messageId = SendMessage($connector, $threemaId, $message);
    } catch (Exception $e) {
        http_response_code(500);
        $errorMessage = $e->getMessage();
    }
 * @throws Exception
 * @return string
 */
function FetchPublicKey(Threema\MsgApi\Connection $connector, $threemaId)
{
    $result = $connector->fetchPublicKey($threemaId);
    if ($result->isSuccess()) {
        return $result->getPublicKey();
    } else {
        throw new Exception($result->getErrorMessage());
    }
}
//get params
$threemaId = null;
if (ReturnGetPost('threemaid') && preg_match('/' . REGEXP_THREEMAID_ANY . '/', ReturnGetPost('threemaid'))) {
    $threemaId = htmlentities(ReturnGetPost('threemaid'));
}
//create connection
$connector = CreateConnection();
//fetch public key and return a 500 error in case of a failure
if ($threemaId !== null) {
    try {
        //success: return all variants of the key as a JSON
        $publicKey['long'] = FetchPublicKey($connector, $threemaId);
        $publicKey['shortuserdisplay'] = KeyGetUserDisplay($publicKey['long']);
        echo json_encode($publicKey);
    } catch (Exception $e) {
        http_response_code(500);
        echo json_encode(['errorMessage' => $e->getMessage()]);
    }
} else {