Module: InstagramConnect
- Defined in:
- lib/instagram_connect.rb,
lib/instagram_connect/cli.rb,
lib/instagram_connect/auth.rb,
lib/instagram_connect/usage.rb,
lib/instagram_connect/client.rb,
lib/instagram_connect/doctor.rb,
lib/instagram_connect/engine.rb,
lib/instagram_connect/errors.rb,
lib/instagram_connect/ingest.rb,
lib/instagram_connect/result.rb,
lib/instagram_connect/connect.rb,
lib/instagram_connect/railtie.rb,
lib/instagram_connect/version.rb,
lib/instagram_connect/media/limits.rb,
lib/instagram_connect/rate_limiter.rb,
lib/instagram_connect/auth/strategy.rb,
lib/instagram_connect/configuration.rb,
lib/instagram_connect/text_splitter.rb,
app/models/instagram_connect/account.rb,
app/models/instagram_connect/comment.rb,
app/models/instagram_connect/mention.rb,
app/models/instagram_connect/message.rb,
lib/instagram_connect/ingest/summary.rb,
app/jobs/instagram_connect/ingest_job.rb,
lib/instagram_connect/ingest/envelope.rb,
lib/instagram_connect/ingest/registry.rb,
lib/instagram_connect/media/attaching.rb,
lib/instagram_connect/messaging_window.rb,
app/models/instagram_connect/api_budget.rb,
app/models/instagram_connect/media_item.rb,
lib/instagram_connect/ingest/dispatcher.rb,
lib/instagram_connect/signature_verifier.rb,
app/models/instagram_connect/conversation.rb,
lib/instagram_connect/auth/facebook_login.rb,
app/jobs/instagram_connect/application_job.rb,
app/jobs/instagram_connect/fetch_media_job.rb,
app/models/instagram_connect/webhook_event.rb,
lib/instagram_connect/auth/instagram_login.rb,
lib/instagram_connect/ingest/handlers/base.rb,
app/jobs/instagram_connect/profile_sync_job.rb,
app/jobs/instagram_connect/send_message_job.rb,
app/jobs/instagram_connect/replay_events_job.rb,
app/models/instagram_connect/inbound_message.rb,
app/jobs/instagram_connect/refresh_tokens_job.rb,
app/models/instagram_connect/insight_snapshot.rb,
app/models/instagram_connect/message_reaction.rb,
lib/instagram_connect/ingest/handlers/unknown.rb,
lib/instagram_connect/ingest/handlers/comments.rb,
lib/instagram_connect/ingest/handlers/mentions.rb,
lib/instagram_connect/ingest/handlers/messages.rb,
app/models/instagram_connect/application_record.rb,
app/models/instagram_connect/message_attachment.rb,
app/helpers/instagram_connect/application_helper.rb,
app/jobs/instagram_connect/account_readiness_job.rb,
lib/generators/instagram_connect/views_generator.rb,
app/jobs/instagram_connect/sync_conversations_job.rb,
app/controllers/instagram_connect/oauth_controller.rb,
app/controllers/instagram_connect/posts_controller.rb,
lib/instagram_connect/ingest/handlers/messaging_seen.rb,
lib/instagram_connect/ingest/handlers/story_insights.rb,
app/controllers/instagram_connect/comments_controller.rb,
app/controllers/instagram_connect/messages_controller.rb,
app/controllers/instagram_connect/webhooks_controller.rb,
lib/generators/instagram_connect/controllers_generator.rb,
lib/instagram_connect/ingest/handlers/messaging_optins.rb,
lib/instagram_connect/ingest/handlers/message_reactions.rb,
app/controllers/instagram_connect/application_controller.rb,
lib/instagram_connect/ingest/handlers/messaging_handover.rb,
lib/instagram_connect/ingest/handlers/messaging_referral.rb,
lib/instagram_connect/ingest/handlers/messaging_postbacks.rb,
app/controllers/instagram_connect/conversations_controller.rb,
lib/generators/instagram_connect/install/install_generator.rb
Overview
InstagramConnect connects a Rails app to Instagram over the official Meta Graph API: receive and reply to DMs and comments in real time via HMAC-verified webhooks, publish posts, and manage OAuth tokens.
InstagramConnect.configure do |c|
c.auth_path = :facebook_login
c.app_id = Rails.application.credentials.dig(:instagram_connect, :app_id)
c.app_secret = Rails.application.credentials.dig(:instagram_connect, :app_secret)
c.verify_token = Rails.application.credentials.dig(:instagram_connect, :verify_token)
end
Defined Under Namespace
Modules: ApplicationHelper, Auth, Generators, Media, RateLimiter, SignatureVerifier, TextSplitter Classes: Account, AccountReadinessJob, ApiBudget, ApiError, ApplicationController, ApplicationJob, ApplicationRecord, CLI, Client, Comment, CommentsController, Configuration, ConfigurationError, Connect, Conversation, ConversationsController, Doctor, Engine, Error, FetchMediaJob, InboundMessage, Ingest, IngestJob, InsightSnapshot, MediaItem, Mention, Message, MessageAttachment, MessageReaction, MessagesController, MessagingWindow, OauthController, PostsController, ProfileSyncJob, Railtie, RefreshTokensJob, ReplayEventsJob, Result, SendMessageJob, SignatureError, SyncConversationsJob, Usage, WebhookEvent, WebhooksController
Constant Summary collapse
- TABLES =
Every table the gem's migrations own, in dependency order (parents first). Hosts use it to audit what the engine added to their schema; the suite uses it to assert the migrations actually built what the models expect.
%w[ instagram_connect_accounts instagram_connect_conversations instagram_connect_messages instagram_connect_inbound_messages instagram_connect_comments instagram_connect_webhook_events instagram_connect_message_reactions instagram_connect_message_attachments instagram_connect_media instagram_connect_mentions instagram_connect_insight_snapshots instagram_connect_api_budgets ].freeze
- VERSION =
"0.3.2"
Class Attribute Summary collapse
Class Method Summary collapse
-
.base_css ⇒ Object
The gem's base stylesheet, inlined into its layout so the UI is styled with no host asset-pipeline setup required.
- .configure {|configuration| ... } ⇒ Object
- .reset! ⇒ Object
Class Attribute Details
.configuration ⇒ Object
52 53 54 |
# File 'lib/instagram_connect.rb', line 52 def configuration @configuration ||= Configuration.new end |
Class Method Details
.base_css ⇒ Object
The gem's base stylesheet, inlined into its layout so the UI is styled with no host asset-pipeline setup required.
70 71 72 73 74 |
# File 'lib/instagram_connect.rb', line 70 def base_css @base_css ||= File.read( File.("../app/assets/stylesheets/instagram_connect/application.css", __dir__) ) end |
.configure {|configuration| ... } ⇒ Object
58 59 60 61 62 |
# File 'lib/instagram_connect.rb', line 58 def configure yield(configuration) configuration.validate! configuration end |
.reset! ⇒ Object
64 65 66 |
# File 'lib/instagram_connect.rb', line 64 def reset! @configuration = Configuration.new end |