Likes Likes:  0
Resultaten 1 tot 2 van de 2
Geen
  1. #1
    Ontwikkeling Roundcube plugin met DA API
    geregistreerd gebruiker
    6.041 Berichten
    Ingeschreven
    23/10/04

    Locatie
    Amersfoort

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    171 Berichten zijn liked


    Functie: Freelance IT Professional
    URL: localhost
    View randytenhave's profile on LinkedIn

    Thread Starter

    Ontwikkeling Roundcube plugin met DA API

    Hoi,

    Ik zoek iemand die een Roundcube plugin kan ontwikkelen die gebruik maakt van de Directadmin API. De bedoeling is om forwards in te stellen vanaf RC. Deze moeten via de API dus doorgegeven worden aan DA. Het moet functioneel zijn, niet fancy. Een eventueel grafisch schilletje wordt eventueel ontwikkeld door de eigen Interaction Designer.

    Ik schat zelf een dag werk voor mensen die bekend zijn met de DA API. Reacties met tarief (fixed fee) kunnen gemaild worden naar randy@ispi.nl. Vergeet geen codesample! Mensen die Zend Certified zijn genieten de voorkeur.

    Er kan getest worden en er mag gebruik gemaakt worden van de API op admin niveau in DA, omdat ik niet weet of het op user/resellerniveau gaat werken. Een eventuele OTAP omgeving voor het testen en ontwikkelen kan beschikbaar gesteld worden.
    MultiMaak - Voor persoonlijke cadeau's en relatiegeschenken!

  2. #2
    Ontwikkeling Roundcube plugin met DA API
    Geregistreerd Gebruiker
    4.755 Berichten
    Ingeschreven
    23/04/05

    Locatie
    Eindhoven

    Post Thanks / Like
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)
    353 Berichten zijn liked


    Naam: Toin Bloo
    Bedrijf: Dommel Hosting
    URL: www.dommelhosting.nl
    ISPConnect: Lid
    KvK nummer: 17177247

    Citaat Oorspronkelijk geplaatst door Randy Bekijk Berichten
    omdat ik niet weet of het op user/resellerniveau gaat werken
    Je hebt de username/password nodig van de eigenaar van het domein, haar reseller of de admin. De gegevens van een POP/IMAP werken niet. Ik heb hier ooit de volgende demo voor geschreven:

    PHP Code:
    <?php

    //html form
    echo '<html><head></head><body>';

    $username = $_POST['username'];
    $password = $_POST['password'];
    $domain = $_POST['domain'];

    echo 
    '<form method="post">';
    echo 
    'domain <input name="domain" type=text size=25 value="'.$domain.'"> ';
    echo 
    'username <input name="username" type=text size=10 value="'.$username.'"> ';
    echo 
    'password <input name="password" type=password size=10 value="'.$password.'"> ';
    echo 
    '<input name="submit" type=submit>';
    echo 
    '</form>';

    //create, remove and list forwarders
    if (isset($_POST['submit']))
    {
        
    $directadmin = 'https://localhost:2222';

        
    forwarders_create($directadmin, $username, $password, $domain, 'test1', 'test@testuser.nl');
        
    forwarders_create($directadmin, $username, $password, $domain, 'test2', 'test@testuser.nl');
        
    forwarders_create($directadmin, $username, $password, $domain, 'test3', 'test@testuser.nl');

        
    forwarders_remove($directadmin, $username, $password, $domain, 'test2');
        
        
    $forwarders = forwarders_list($directadmin, $username, $password, $domain);

        if (
    $forwarders === false)
        {
            echo 
    'error listing forwarders';
        }
        else
        {
            foreach (
    $forwarders as $from=>$to)
            {
                echo 
    $from.' => '.$to.'<br>';
            }        
        }
    }

    echo 
    '</body></html>';

    //functions
    function directadmin_apiget($directadmin, $username, $password, $request)
    {
        
    $ch = curl_init();
        
    curl_setopt($ch, CURLOPT_HEADER, 0);
        
    $authstring = base64_encode($username.':'.$password);
        
    $curlheaders[0] = 'Authorization: Basic '.$authstring;
        
    curl_setopt($ch, CURLOPT_HTTPHEADER, $curlheaders);
        
        if (
    strpos($directadmin, 'https') !== false)
        {
            
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
            
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
            
    curl_setopt($ch, CURLOPT_URL, $directadmin.$request);
        }
        else
        {
            
    curl_setopt($ch, CURLOPT_URL, $directadmin.$request);
        }

        
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        
    $output = curl_exec($ch);
        
    curl_close($ch);

        return 
    $output;
    }

    function 
    forwarders_list($directadmin, $username, $password, $domain)
    {
        
    $request = '/CMD_API_EMAIL_FORWARDERS?domain='.htmlentities($domain);
        
    $result = directadmin_apiget($directadmin, $username, $password, $request);
        
    parse_str($result, $resultarray);

        if (@
    $resultarray['error'] == 1)
        {
            return 
    false;
        }
        else
        {
            return 
    $resultarray;
        }
    }

    function 
    forwarders_create($directadmin, $username, $password, $domain, $from, $to)
    {
        
    $request = '/CMD_API_EMAIL_FORWARDERS?domain='.htmlentities($domain).'&action=create&user='.htmlentities($from).'&email='.htmlentities($to);
        
    directadmin_apiget($directadmin, $username, $password, $request);
    }

    function 
    forwarders_remove($directadmin, $username, $password, $domain, $from)
    {
        
    $request = '/CMD_API_EMAIL_FORWARDERS?domain='.htmlentities($domain).'&action=delete&select0='.htmlentities($from);
        
    directadmin_apiget($directadmin, $username, $password, $request);
    }

    ?>

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics