Example #1
0
void ArduinoEngine::ad_requestSwitchVal()
{
    std::string msg = "ad_requestSwitchVal\n";
    _sendMsg(msg);
}
void EmailListenerDestination::_sendViaEmail(
    const Array<String> & mailTo,
    const Array<String> & mailCc,
    const String & mailSubject,
    const String & formattedText)
{
    PEG_METHOD_ENTER (TRC_IND_HANDLER,
                      "EmailListenerDestination::_sendViaEmail");

#if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_OS_LINUX)

    String exceptionStr;
    FILE * mailFilePtr;
    FILE * filePtr;
    char mailFile[TEMP_NAME_LEN];

    // Check for proper execute permissions for sendmail
    if (access(SENDMAIL_CMD, X_OK) < 0)
    {
        Tracer::trace(TRC_IND_HANDLER, Tracer::LEVEL4,
                      "Cannot execute %s: %s." SENDMAIL_CMD,
                      strerror(errno));

        MessageLoaderParms parms(
            "Handler.EmailListenerDestination.EmailListenerDestination._MSG_EXECUTE_ACCESS_FAILED",
            "Cannot execute $0: $1",
            SENDMAIL_CMD,
            strerror(errno));

        Logger::put_l (Logger::STANDARD_LOG, System::CIMSERVER,
                       Logger::WARNING,
                       "Handler.EmailListenerDestination.EmailListenerDestination._MSG_EXECUTE_ACCESS_FAILED",
                       MessageLoader::getMessage(parms));

        PEG_METHOD_EXIT();

        return;
    }

    // open a temporary file to hold the indication mail message
    _openFile(&filePtr, mailFile);

    try
    {
        _buildMailHeader(mailTo, mailCc, mailSubject, filePtr);

        // write indication text to the file
        _writeStrToFile(formattedText, filePtr);

        fclose(filePtr);

    }
    catch (CIMException &c)
    {
        fclose(filePtr);
        unlink(mailFile);

        PEG_METHOD_EXIT();
        return;
    }

    try
    {
        // send the message
        _sendMsg(mailFile);
    }
    catch (CIMException &c)
    {
        unlink(mailFile);

        PEG_METHOD_EXIT();
        return;
    }

    unlink(mailFile);

    PEG_METHOD_EXIT();

#else
    PEG_TRACE_STRING(TRC_IND_HANDLER, Tracer::LEVEL4,
                     "sendmail is not supported.");
    PEG_METHOD_EXIT();


    throw PEGASUS_CIM_EXCEPTION_L (CIM_ERR_NOT_SUPPORTED,
                                   MessageLoaderParms("Handler.EmailListenerDestination."
                                           "EmailListenerDestination.UNSUPPORTED_OPERATION",
                                           "sendmail is not supported."));
#endif
    PEG_METHOD_EXIT();

}
Example #3
0
void ArduinoEngine::ad_init()
{
    std::string msg = "ad_init\n";
    _sendMsg(msg);
    _sendMsg("ad_ledOn\n");
}