Skip to content

SpectralVectors/RenderReminder

Repository files navigation

RenderReminder

Contributors Forks Stargazers Issues GNU GENERAL PUBLIC LICENSE

What It Does

Sends an email and plays a sound to notify you when your Blender render is finished!

How to Install and Use

Click the image below to view the Install Guide on YouTube:

Install and Use

How It Works

This addon uses Python (smtplib, aud) to send an email and play a sound effect once your render is ready.

Blender has a system called App Handlers that run when specific events happen in the application.

The notification function runs once Blender reports that a render has completed.

Sound

The addon will play a short Blender synthesized sound effect when the render is finished.

The sound could be one of two internally generated SFX, or you can load your own sound file.

Email

The email and sound notifications can be used separately or in combination, selected via the checkboxes in the addon's preferences.

You can add multiple email addresses to the 'Send To:' field, separated by commas.

Limitations

File without name

The addon will automatically name your render after the time the blend file was opened, and save it in your Documents folder if you do not specify another name and location.

Gmail Authorization (less secure app)

It uses Gmail and you will need to make sure that Allow less secure apps is set to ON to send the messages.

I signed up for a separate Gmail account with lower security settings to use as my 'Send From' account, and that sends notification emails to my main email.

File dimension

It will work for images or animations, however, there may be issues with attachment file size limits if you're dealing with video.

Save render result

FYI: In order to save the images the addon sets Blender's render option (write_still=True), it is set normally False. The same goes for render caching.

Managing 2FA for Emails

The plugin currently does not support managing two-factor authentication (2FA) for emails.
However, you can bypass this requirement by providing an authorized token/password along with the email, thereby avoiding the second authentication check.
Ensure you use a valid and authorized token/password to ensure uninterrupted access.
We recommend referring to the email service documentation for specific instructions on how to generate and use such token/password.

Documentation for some email providers

Adding a New Notification Method (Developer)

To add a new custom method for notifications, follow the steps below:

  1. Copy the file plugin/sound.py to plugin/<method>.py:
    Make sure you have the sound.py file in the plugin folder. Copy it and rename it with the desired name for the new method, for example, <method>.py.

  2. Define the <method>Plugin Class extending PluginInterface and AddonPreferences:
    In the __<method>Plugin__class, you need to extend both PluginInterface and AddonPreferences.

  3. Implementa le Funzioni Statiche Obbligatorie:
    The PluginInterface class requires the implementation of two static functions: execute e draw.

    @staticmethod
    def execute(preferences, context):
        pass
    
    @staticmethod
    def draw(parent, layout):
        pass
  4. Implementation of the draw Function:
    For the draw function, refer to the Blender documentation to create an interface for the new method. You can find useful information in the Blender documentation.

  5. Implementation of the execute Function:
    The execute function takes the preferences object as the first parameter, which contains the static variables declared in the class. You can access them as instance variables of the preferences object.

Make sure to carefully follow these steps to successfully integrate the new custom method for notifications. Once the implementation is completed, the new method will be available for use within your Blender project.

License

Distributed under the GPL-3.0. See LICENSE for more information.