class_docstr: Provide an opt-producer and CLI argument parser.
  
  Pseudo-extension of ``argparse`` which sets a number of parameters
  for the ParlAI framework. More options can be added specific to other
  modules by passing this object and calling ``add_arg()`` or
  ``add_argument()`` on it.
  
  For an example, see ``parlai.core.dict.DictionaryAgent.add_cmdline_args``.
  
  :param add_parlai_args:
      (default True) initializes the default arguments for ParlAI
      package, including the data download paths and task arguments.
  :param add_model_args:
      (default False) initializes the default arguments for loading
      models, including initializing arguments from that model.
class_docstr_tok: ["Provide","an","opt-producer","and","CLI","argument","parser",".","Pseudo-extension","of","``","argparse","``","which","sets","a","number","of","parameters","for","the","ParlAI","framework",".","More","options","can","be","added","specific","to","other","modules","by","passing","this","object","and","calling","``","add_arg","(",")","``","or","``","add_argument","(",")","``","on","it",".","For","an","example",",","see","``","parlai.core.dict.DictionaryAgent.add_cmdline_args","``",".",":","param","add_parlai_args",":","(","default","True",")","initializes","the","default","arguments","for","ParlAI","package",",","including","the","data","download","paths","and","task","arguments",".",":","param","add_model_args",":","(","default","False",")","initializes","the","default","arguments","for","loading","models",",","including","initializing","arguments","from","that","model","."]
docstr: Add Facebook Messenger arguments.
docstr_tok: ["Add","Facebook","Messenger","arguments","."]
code: def add_messenger_args(self):
      """
      Add Facebook Messenger arguments.
      """
      self.add_chatservice_args()
      messenger = self.add_argument_group("Facebook Messenger")
      messenger.add_argument(
          "--verbose",
          dest="verbose",
          action="store_true",
          help="print all messages sent to and from Turkers",
      )
      messenger.add_argument(
          "--log-level",
          dest="log_level",
          type=int,
          default=20,
          help="importance level for what to put into the logs. the lower "
          "the level the more that gets logged. values are 0-50",
      )
      messenger.add_argument(
          "--force-page-token",
          dest="force_page_token",
          action="store_true",
          help="override the page token stored in the cache for a new one",
      )
      messenger.add_argument(
          "--bypass-server-setup",
          dest="bypass_server_setup",
          action="store_true",
          default=False,
          help="should bypass traditional server and socket setup",
      )
      messenger.add_argument(
          "--local",
          dest="local",
          action="store_true",
          default=False,
          help="Run the server locally on this server rather than setting up"
          " a heroku server.",
      )
  
      messenger.set_defaults(is_debug=False)
      messenger.set_defaults(verbose=False)
  
imports: import argparse
  import importlib
  import os
  import sys
  import datetime
  import parlai
  import parlai.utils.logging
  from parlai.core.build_data import modelzoo_path
  from parlai.core.loader import load_teacher_module, load_agent_module, load_world_module
  from parlai.tasks.tasks import ids_to_tasks
  from parlai.core.opt import Opt
  from parlai.utils.io import PathManager
  from typing import List, Optional
label_desc: Use image node_id 6 for calling the ParlaiParser obj's underlying member method code with example usage: obj.add_messenger_args() without return types