Go Back   vb.org Archive > Community Discussions > Modification Requests/Questions (Unpaid)
Prev Previous Post   Next Post Next
  #2  
Old 05-09-2015, 05:45 PM
QSTR QSTR is offline
 
Join Date: Nov 2010
Location: Poland
Posts: 15
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes it is.

PHP with pop3/imap client for the e-mail account + vB cron job + datamanager.

--------------- Added [DATE]1431204794[/DATE] at [TIME]1431204794[/TIME] ---------------

Setup email account.
Set user/forum/thread ids.

Later put the code into some file - lets call it 'email2post.php', upload to the main vB directory.
When all will be done, send a test email to your mailbox and run the script from a browser.

I tested it under vB 4.2.2.

Treat this script as example, fix it as you need. Do not use it in public,

PHP Code:
<?php
    
// simple email2post
    // fix it as you need

    // QSTR - 09.05.2015r1
    // https://vborg.vbsupport.ru/showthread.php?t=318396
    // GPL - http://www.gnu.org/copyleft/gpl.html

    
require_once('./global.php');
    require_once(
DIR '/includes/functions_databuild.php');

    
// configure as you need
    // http://php.net/manual/en/function.imap-open.php
    
$imap imap_open("{localhost:995/pop3/ssl/novalidate-cert}INBOX""mailUser""mailPass");

    
// user id used for posting
    
$post_user_id 1234;

    
// forum id
    
$post_forum_id 1;

    
// thread id
    
$post_thread_id 5678;

    
#######################################################################################################################

    // add post, simple
    
function add_post($userid$post$forumid$threadid$timestamp)
    {
        global 
$vbulletin;

        
// setup datamanager
        
$tdm =& datamanager_init('Post'$vbulletinERRTYPE_ARRAY'threadpost');
        
$tdm->set('userid'$userid);
        
$tdm->set('pagetext'$post);
        
$tdm->set('allowsmilie'1);
        
$tdm->set('visible'1);
        
$tdm->set('threadid'$threadid);
        
$tdm->set('dateline'$timestamp);

        
// try to save the post
        
$tdm->pre_save();

        
// check for errors 
        
if (empty($tdm->errors))
        {
            
$post_id $tdm->save();

            
// rebuild counters
            
build_thread_counters($threadid);
            
build_forum_counters($forumid);

            return 
$post_id;
        } else {
            return 
false;
        }
    }

    
// connection ok?
    
if ($imap
    {
        
// count the messages in the mailbox
        
$mails_count imap_num_msg($imap);

        
// if we got some
        
if($mails_count 0
        {
            
// each mail
            
for ($mail_id 1$mail_id <= $mails_count$mail_id++)
            {
                
// mail body
                
$mail_body imap_qprint(imap_body($imap$mail_id));
    
                
// some info
                
echo $mail_id ". <pre>" $mail_body "</pre><br><b>post id: ";
                echo 
add_post($post_user_id$mail_body$post_forum_id$post_thread_idtime());
                echo 
"</b><br><hr><br>";

                
// mark for deletion
                
imap_delete($imap$mail_id);
            }
        } else {
            echo 
"empty mailbox";
        }

        
// delete marked messages, close imap
        
imap_expunge($imap);
        
imap_close($imap);
    } 
?>
Reply With Quote
Благодарность от:
RichieBoy67
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:36 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04118 seconds
  • Memory Usage 2,635KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (2)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (10)post_thanks_box
  • (1)post_thanks_box_bit
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (10)post_thanks_postbit_info
  • (10)postbit
  • (10)postbit_onlinestatus
  • (10)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete