sniper_links 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/Gemfile.lock +2 -2
- data/README.md +11 -8
- data/lib/sniper_links/strategies/aol_dot_com.rb +21 -0
- data/lib/sniper_links/strategies/hey_dot_com.rb +19 -0
- data/lib/sniper_links/strategies/mail_dot_ru.rb +21 -0
- data/lib/sniper_links/version.rb +1 -1
- data/lib/sniper_links.rb +9 -0
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca3113b41e761eff4fd8aeb31503d0bf914029a150abd3b1018ec6ee0f7e2f2d
|
4
|
+
data.tar.gz: 8567b12c6431f595d4a04da9dd5dbadfc2bc2f3c76d70850979c13f6d1b201f9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b770935a564133235a690d7dacdaf843e0d0ba4c3d83464fb5ea1d779c160d04d06a387ac0f4847a8b56f2f521b6f44bf304a67e2d65b7efeea04cdcf80d4a78
|
7
|
+
data.tar.gz: 5990297577be8db4dbe10649cec084ca1968899b623d2d3659f44ed216a33d6504cc9e84a04107ecec00f93c624936495d33b184072744e8d4e392b16f55af0b
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
7
7
|
|
8
8
|
## Unreleased
|
9
9
|
|
10
|
+
## 0.2.0 - 2025-05-29
|
11
|
+
|
12
|
+
### Added
|
13
|
+
|
14
|
+
* Support for hey.com (browser link only)
|
15
|
+
* Support for aol.com (browser link only)
|
16
|
+
* Support for mail.ru (browser link only)
|
17
|
+
|
10
18
|
## 0.1.1 - 2025-05-23
|
11
19
|
|
12
20
|
### Added
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -73,18 +73,21 @@ We support the following email service provider platforms:
|
|
73
73
|
* Yahoo - `*@yahoo.*` or `*@myyahoo.*`
|
74
74
|
* ProtonMail - `*@protonmail.com`, `*@proton.me`, `*@protonmail.ch`, or `*@pm.me`
|
75
75
|
* iCloud - `*@icloud.com`, `*@me.com`, or `*@mac.com`
|
76
|
+
* Hey.com - `*@hey.com`
|
77
|
+
* AOL - `*@aol.com`
|
78
|
+
* Mail.ru - `*@mail.ru`
|
76
79
|
|
77
80
|
### Sniper link strategy functionality
|
78
81
|
|
79
82
|
Each email service provider has its own sniper link strategy. The following table shows how much functionality is supported by each provider.
|
80
83
|
|
81
|
-
| | Gmail | Outlook | Yahoo | Protonmail | iCloud |
|
82
|
-
|
83
|
-
| Link | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
|
84
|
-
| Account | ✔️ | ✔️ | ✖️ | ✖️️ | ✖️ |
|
85
|
-
| From filter | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ |
|
86
|
-
| Spam piercer | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ |
|
87
|
-
| Time filter | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ |
|
84
|
+
| | Gmail | Outlook | Yahoo | Protonmail | iCloud | Hey.com | AOL | Mail.ru |
|
85
|
+
|--------------|-------|---------|-------|------------|--------|---------|---------|-------|
|
86
|
+
| Link | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
|
87
|
+
| Account | ✔️ | ✔️ | ✖️ | ✖️️ | ✖️ | ✖️ | ✖️ | ✖️ |
|
88
|
+
| From filter | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ | ✖️ | ✔️ | ✔️ |
|
89
|
+
| Spam piercer | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ | ✔️ | ✖️ | ✖️ |
|
90
|
+
| Time filter | ✔️ | ✖️️️️ | ✔️ | ✔️ | ✖️ | ✖️ | ✔️ | ✖️ |
|
88
91
|
|
89
92
|
## Development
|
90
93
|
|
@@ -96,7 +99,7 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/zero-o
|
|
96
99
|
|
97
100
|
### Feature wishlist
|
98
101
|
|
99
|
-
* Add support for more email service providers, like
|
102
|
+
* Add support for more email service providers, like Fastmail, etc.
|
100
103
|
* Add support for selecting a strategy based on the email address domain's MX records.
|
101
104
|
|
102
105
|
## License
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class SniperLinks
|
2
|
+
module Strategies
|
3
|
+
class AOLDotCom
|
4
|
+
def initialize(email)
|
5
|
+
@email = email
|
6
|
+
end
|
7
|
+
|
8
|
+
def sniper_link(from)
|
9
|
+
@from = from
|
10
|
+
|
11
|
+
URI("https://mail.aol.com/d/search/keyword=from:#{from}")
|
12
|
+
end
|
13
|
+
|
14
|
+
attr_reader :email, :from
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
__END__
|
20
|
+
|
21
|
+
https://mail.aol.com/d/search/keyword=from:me@you.com
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class SniperLinks
|
2
|
+
module Strategies
|
3
|
+
class HeyDotCom
|
4
|
+
def initialize(email)
|
5
|
+
@email = email
|
6
|
+
end
|
7
|
+
|
8
|
+
def sniper_link(_from = nil)
|
9
|
+
URI("https://app.hey.com/topics/everything")
|
10
|
+
end
|
11
|
+
|
12
|
+
attr_reader :email
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
__END__
|
18
|
+
|
19
|
+
https://app.hey.com/topics/everything
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class SniperLinks
|
2
|
+
module Strategies
|
3
|
+
class MailDotRu
|
4
|
+
def initialize(email)
|
5
|
+
@email = email
|
6
|
+
end
|
7
|
+
|
8
|
+
def sniper_link(from)
|
9
|
+
@from = from
|
10
|
+
|
11
|
+
URI("https://e.mail.ru/search?q_from=#{from}")
|
12
|
+
end
|
13
|
+
|
14
|
+
attr_reader :email, :from
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
__END__
|
20
|
+
|
21
|
+
https://e.mail.ru/search/?q_from=me@you.com
|
data/lib/sniper_links/version.rb
CHANGED
data/lib/sniper_links.rb
CHANGED
@@ -2,8 +2,11 @@ require "sniper_links/version"
|
|
2
2
|
|
3
3
|
require "uri"
|
4
4
|
|
5
|
+
require "sniper_links/strategies/aol_dot_com"
|
5
6
|
require "sniper_links/strategies/apple"
|
6
7
|
require "sniper_links/strategies/gmail"
|
8
|
+
require "sniper_links/strategies/hey_dot_com"
|
9
|
+
require "sniper_links/strategies/mail_dot_ru"
|
7
10
|
require "sniper_links/strategies/outlook"
|
8
11
|
require "sniper_links/strategies/proton"
|
9
12
|
require "sniper_links/strategies/yahoo"
|
@@ -43,6 +46,12 @@ class SniperLinks
|
|
43
46
|
SniperLinks::Strategies::Proton.new(email)
|
44
47
|
when /(me|mac|icloud)\.com\z/
|
45
48
|
SniperLinks::Strategies::Apple.new(email)
|
49
|
+
when /hey\.com\z/
|
50
|
+
SniperLinks::Strategies::HeyDotCom.new(email)
|
51
|
+
when /aol\.com\z/
|
52
|
+
SniperLinks::Strategies::AOLDotCom.new(email)
|
53
|
+
when /mail\.ru\z/
|
54
|
+
SniperLinks::Strategies::MailDotRu.new(email)
|
46
55
|
else
|
47
56
|
raise Error, "Unsupported email domain"
|
48
57
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sniper_links
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gabriel Fortuna
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-05-
|
11
|
+
date: 2025-05-29 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Increase your email open rates with sniper links. This gem generates
|
14
14
|
sniper links for various email platforms, increasing the chance that an email will
|
@@ -31,8 +31,11 @@ files:
|
|
31
31
|
- bin/console
|
32
32
|
- bin/setup
|
33
33
|
- lib/sniper_links.rb
|
34
|
+
- lib/sniper_links/strategies/aol_dot_com.rb
|
34
35
|
- lib/sniper_links/strategies/apple.rb
|
35
36
|
- lib/sniper_links/strategies/gmail.rb
|
37
|
+
- lib/sniper_links/strategies/hey_dot_com.rb
|
38
|
+
- lib/sniper_links/strategies/mail_dot_ru.rb
|
36
39
|
- lib/sniper_links/strategies/outlook.rb
|
37
40
|
- lib/sniper_links/strategies/proton.rb
|
38
41
|
- lib/sniper_links/strategies/yahoo.rb
|
@@ -61,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
61
64
|
- !ruby/object:Gem::Version
|
62
65
|
version: '0'
|
63
66
|
requirements: []
|
64
|
-
rubygems_version: 3.
|
67
|
+
rubygems_version: 3.3.22
|
65
68
|
signing_key:
|
66
69
|
specification_version: 4
|
67
70
|
summary: Generate sniper links for various email platforms
|